package com.steve.xfood.exception;

import com.steve.xfood.enums.ResultEnum;
import lombok.Getter;

/**
 * 自定义异常
 * 这里继承RuntimeException而不继承Exception的原因是：
 * Spring默认是出现了RuntimeException，事务才会回滚
 * @author steve
 * @date 2020/5/8 7:00 上午
 */
@Getter
public class XFoodException extends RuntimeException {

    private Integer code;

    public XFoodException(ResultEnum resultEnum) {
        //把Message的内容传给父类的RuntimeException构造方法
        super(resultEnum.getMessage());

        this.code = resultEnum.getCode();
    }

    /**
     * 带code和message的构造方法
     * @param code 异常码
     * @param message 异常信息
     */
    public XFoodException(Integer code, String message) {
        super(message);
        this.code = code;
    }
}
